﻿using System;
namespace Producers.Ehr.Xtee.Riik.Ee.Producer.Ehr {
    
    
    public partial class Dokumendid : global::Producers.Ehr.Xtee.Riik.Ee.Producer.Ehr.IDokumendid {
        
        private string @__tYHIVASTUS;
        
        private System.Collections.Generic.List<Dokumendid.IDOKUMENTType> @__dOKUMENT = new System.Collections.Generic.List<Dokumendid.IDOKUMENTType>();
        
        public Dokumendid() {
        }
        
        /// <summary>
        /// All parameters
        /// </summary>
        public Dokumendid(string @tYHIVASTUS, System.Collections.Generic.List<Dokumendid.IDOKUMENTType> @dOKUMENT) {
            this.@__tYHIVASTUS = @tYHIVASTUS;
            this.@__dOKUMENT = @dOKUMENT;
        }
        
        /// <summary>
        /// Copy Constructor
        /// </summary>
        protected Dokumendid(IDokumendid @dokumendid) {
            this.@__tYHIVASTUS = @dokumendid.TYHIVASTUS;
            this.@__dOKUMENT = @dokumendid.DOKUMENT;
        }
        
        public virtual string TYHIVASTUS {
            get {
                return this.@__tYHIVASTUS;
            }
            set {
                this.@__tYHIVASTUS = value;
            }
        }
        
        public virtual System.Collections.Generic.List<Dokumendid.IDOKUMENTType> DOKUMENT {
            get {
                return this.@__dOKUMENT;
            }
            set {
                this.@__dOKUMENT = value;
            }
        }
        
        public partial class DOKUMENTType : IDOKUMENTType {
            
            private string @__dOKNR;
            
            private string @__dOKKP;
            
            private string @__dOKUMENT;
            
            private string @__dOKUMENDIVALJASTAJA;
            
            private string @__dATA;
            
            private global::Xtee.Riik.Ee.Xsd.Xtee.Url @__buildingURL;
            
            public DOKUMENTType() {
            }
            
            /// <summary>
            /// All parameters
            /// </summary>
            public DOKUMENTType(string @dOKNR, string @dOKKP, string @dOKUMENT, string @dOKUMENDIVALJASTAJA, string @dATA, global::Xtee.Riik.Ee.Xsd.Xtee.Url @buildingURL) {
                this.@__dOKNR = @dOKNR;
                this.@__dOKKP = @dOKKP;
                this.@__dOKUMENT = @dOKUMENT;
                this.@__dOKUMENDIVALJASTAJA = @dOKUMENDIVALJASTAJA;
                this.@__dATA = @dATA;
                this.@__buildingURL = @buildingURL;
            }
            
            /// <summary>
            /// Copy Constructor
            /// </summary>
            protected DOKUMENTType(IDOKUMENTType @dOKUMENTType) {
                this.@__dOKNR = @dOKUMENTType.DOKNR;
                this.@__dOKKP = @dOKUMENTType.DOKKP;
                this.@__dOKUMENT = @dOKUMENTType.DOKUMENT;
                this.@__dOKUMENDIVALJASTAJA = @dOKUMENTType.DOKUMENDIVALJASTAJA;
                this.@__dATA = @dOKUMENTType.DATA;
                this.@__buildingURL = @dOKUMENTType.BuildingURL;
            }
            
            public virtual string DOKNR {
                get {
                    return this.@__dOKNR;
                }
                set {
                    this.@__dOKNR = value;
                }
            }
            
            public virtual string DOKKP {
                get {
                    return this.@__dOKKP;
                }
                set {
                    this.@__dOKKP = value;
                }
            }
            
            public virtual string DOKUMENT {
                get {
                    return this.@__dOKUMENT;
                }
                set {
                    this.@__dOKUMENT = value;
                }
            }
            
            public virtual string DOKUMENDIVALJASTAJA {
                get {
                    return this.@__dOKUMENDIVALJASTAJA;
                }
                set {
                    this.@__dOKUMENDIVALJASTAJA = value;
                }
            }
            
            public virtual string DATA {
                get {
                    return this.@__dATA;
                }
                set {
                    this.@__dATA = value;
                }
            }
            
            public virtual global::Xtee.Riik.Ee.Xsd.Xtee.Url BuildingURL {
                get {
                    return this.@__buildingURL;
                }
                set {
                    this.@__buildingURL = value;
                }
            }
        }
        
        public interface IDOKUMENTType {
            
            string DOKNR {
                get;
                set;
            }
            
            string DOKKP {
                get;
                set;
            }
            
            string DOKUMENT {
                get;
                set;
            }
            
            string DOKUMENDIVALJASTAJA {
                get;
                set;
            }
            
            string DATA {
                get;
                set;
            }
            
            global::Xtee.Riik.Ee.Xsd.Xtee.Url BuildingURL {
                get;
                set;
            }
        }
    }
}
